In many types of computer networks, it is desirable to be able to perform certain management related functions on processing system from a remote location. For example, a business enterprise may operate a large computer network that includes numerous client and server processing systems (hereinafter “clients” and “servers”, respectively). With such a network, it may be desirable to allow a network administrator to perform or control various functions on the clients and/or servers from a remote console via the network, such as monitoring various functions and conditions in these devices, configuring the devices, performing diagnostic functions, debugging, software upgrades, etc. To facilitate explanation, such functions are referred to collectively and individually as “management functions”.
One particular application in which it is desirable to have this capability is in a storage-oriented network, i.e., a network that includes one or more storage servers that store and retrieve data on behalf of one or more clients. Such a network may be used, for example, to provide multiple users with access to shared data or to backup mission critical data. An example of such a network is illustrated in FIG. 1.
In FIG. 1, a storage server 2 is coupled locally to a storage subsystem 4, which includes a set of mass storage devices, and to a set of clients 1 through a network 3, such as a local area network (LAN) or wide area network (WAN). The storage server 2 operates on behalf of the clients 1 to store and manage shared files or other units of data (e.g., blocks) in the set of mass storage devices. Each of the clients 1 may be, for example, a conventional personal computer (PC), workstation, or the like. The storage subsystem 4 is managed by the storage server 2. The storage server 2 receives and responds to various read and write requests from the clients 1, directed to data stored in, or to be stored in, the storage subsystem 4. The mass storage devices in the storage subsystem 4 may be, for example, conventional magnetic disks, optical disks such as CD-ROM or DVD based storage, magneto-optical (MO) storage, or any other type of non-volatile storage devices suitable for storing large quantities of data. The mass storage devices may be organized into one or more volumes of Redundant Array of Inexpensive Disks (RAID).
Also shown in FIG. 1 is an administrative console 5 coupled to the storage server 2. The storage server 2 in this configuration includes a serial port (e.g., RS-232) and appropriate software to allow direct communication between the storage server 2 and the administrative console 5 through a transmission line. This configuration enables a network administrator to perform at least some of the types of management functions mentioned above on the storage server 2. Filer products made by Network Appliance, Inc. of Sunnyvale, Calif., are an example of storage servers which has this type of capability.
In the illustrated configuration, the administrative console 5 must be directly coupled to the storage server 2 and must be local to the storage server 2. This limitation is disadvantageous, in that it may be impractical or inconvenient to locate the administrative console 5 close to the storage server 2. Further, this configuration makes it difficult or impossible to use the same administrative console to manage multiple devices on a network.
Technology does exist to enable management functions to be performed on a computer system remotely via a network. In one approach, a device known as a remote management module (RMM) is incorporated into a processing system to enable remote management of the processing system (referred to as the “host” processing system) via a network. The RMM is also referred to as a service processor or remote management card; and in this application the term RMM is used interchangeably with the term service processor. The RMM is often in the form of a dedicated circuit card separate from the other elements of the host processing system. The RMM normally has a network interface that connects to the network and a separate internal interface that connects to one or more components of the processing system.
One shortcoming of known RMM technology is that the RMM needs to be configured separately from the processing system. This is inefficient, as a user would need to perform two separate initializations and possess two sets of credentials, one for the processing system and one for the RMM. Hence, it would be desirable to have a simple unified configuration system for the RMM.